package light.im;

import java.io.IOException;
import java.nio.channels.CompletionHandler;

import light.network.object.PackObject;


public interface IMSession {

	/**
	 * 向客户端写入数据
	 * @param params
	 */
	void write(PackObject params) throws IOException;
	

	void write(PackObject params, Object attachment, final CompletionHandler<Integer, Object> handler) throws IOException;

	/**
	 * 获取会话id，用以标识来自于哪个客户端
	 * @return
	 */
	String getId();
	
	IMEndpoint getIMServer();

//	/**
//	 * 设置该客户的用户ID
//	 * @param isLogin
//	 */
//	public abstract void setUserId(String userId);
//
//	/**
//	 * 获取该客户的用户ID
//	 * @param isLogin
//	 */
//	public abstract String getUserId();
//
//	/**
//	 * 设置该客户端是否登录
//	 * @param isLogin
//	 */
//	public abstract void setLogin(boolean isLogin);
//
//	/**
//	 * 返回该客户短是否登录
//	 * @return
//	 */
//	public abstract boolean isLogin();

}